package com.ruoyi.system.service;

import java.util.List;

import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.system.domain.Act;
import com.ruoyi.system.dto.ResultDto;
import com.ruoyi.system.vo.ActStatVO;
import com.ruoyi.system.vo.ActVO;

/**
 * 参赛作品Service接口
 *
 * @author ruoyi
 * @date 2021-11-28
 */
public interface IActService
{
    /**
     * 查询参赛作品
     *
     * @param id 参赛作品主键
     * @return 参赛作品
     */
    public Act selectActById(Long id);

    /**
     * 查询参赛作品列表
     *
     * @param act 参赛作品
     * @return 参赛作品集合
     */
    public List<Act> selectActList(Act act, SysUser sysUser);

    /**
     * 新增参赛作品
     *
     * @param act 参赛作品
     * @return 结果
     */
    public int insertAct(Act act);

    /**
     * 修改参赛作品
     *
     * @param act 参赛作品
     * @return 结果
     */
    public int updateAct(Act act);

    /**
     * 批量删除参赛作品
     *
     * @param ids 需要删除的参赛作品主键集合
     * @return 结果
     */
    public int deleteActByIds(String ids);

    /**
     * 删除参赛作品信息
     *
     * @param id 参赛作品主键
     * @return 结果
     */
    public int deleteActById(Long id);

    /**
     * 导入作品数据
     * @param actVos
     * @param gameId
     * @return
     */
    public ResultDto importActData(List<ActVO> actVos, Long gameId,SysUser curUser);

    /**
     * 为统计查询数据，查询每个学校、学院的数据
     * @param actStatVO
     * @return
     */
    public List<Act> select4StatList(ActStatVO actStatVO);

    /**
     * 通过gameId和actNo查询  actNo是否存在
     * @param actNo
     * @param gameId
     * @return
     */
    public boolean isExistActNo(String actNo,Long gameId,Long actId);
}
